package com.opentae.data.mall.examples;

import com.opentae.core.mybatis.SgExample;
import com.opentae.core.mybatis.example.EntityColumn;
import com.opentae.core.mybatis.example.EntityTable;
import com.opentae.core.mybatis.mapperhelper.EntityHelper;
import com.opentae.data.mall.beans.DiySearchParam;

import java.util.*;
public class DiySearchParamExample extends SgExample<DiySearchParamExample.Criteria> {
    public static final Class<DiySearchParam> beanClass = DiySearchParam.class;
    public static final EntityTable entityTable = EntityHelper.getEntityTable(beanClass);
    public static EntityColumn field;
    public static EntityColumn pageId;
    public static EntityColumn type;
    public static EntityColumn paramId;
    public static EntityColumn fieldText;
    public static EntityColumn content;
    static {
        Set<EntityColumn> columns = entityTable.getEntityClassColumns();
        Map<String, EntityColumn> listMap = new HashMap<>();
        for (EntityColumn column : columns) {
            listMap.put(column.getProperty(), column);
        }
        field = listMap.get("field");
        pageId = listMap.get("pageId");
        type = listMap.get("type");
        paramId = listMap.get("paramId");
        fieldText = listMap.get("fieldText");
        content = listMap.get("content");
        }

    public DiySearchParamExample() {
        this.setTableAlias(entityTable.getName());
    }

    @Override
    public EntityTable getEntityTable() {
        return entityTable;
    }

    @Override
    protected DiySearchParamExample.Criteria createCriteriaInternal() {
        return new DiySearchParamExample.Criteria(this);
    }

    public static class Criteria extends SgExample.GeneratedCriteria<Criteria> {
        protected Criteria(SgExample example) {
            super(example);
        }

        public DiySearchParamExample.Criteria andFieldIsNull() {
            return isNull(field);
        }

        public DiySearchParamExample.Criteria andFieldIsNotNull() {
            return isNotNull(field);
        }

        public DiySearchParamExample.Criteria andFieldEqualTo(String value) {
            return equalTo(field, value);
        }

        public DiySearchParamExample.Criteria andFieldNotEqualTo(String value) {
            return notEqualTo(field, value);
        }

        public DiySearchParamExample.Criteria andFieldGreaterThan(String value) {
            return greaterThan(field, value);
        }

        public DiySearchParamExample.Criteria andFieldGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(field, value);
        }

        public DiySearchParamExample.Criteria andFieldLessThan(String value) {
            return lessThan(field, value);
        }

        public DiySearchParamExample.Criteria andFieldLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(field, value);
        }

        public DiySearchParamExample.Criteria andFieldLike(String value) {
            return like(field, value);
        }

        public DiySearchParamExample.Criteria andFieldNotLike(String value) {
            return notLike(field, value);
        }

        public DiySearchParamExample.Criteria andFieldIn(List<String> values) {
            return in(field, values);
        }

        public DiySearchParamExample.Criteria andFieldNotIn(List<String> values) {
            return notIn(field, values);
        }

        public DiySearchParamExample.Criteria andFieldBetween(String value1, String value2) {
            return between(field, value1, value2);
        }

        public DiySearchParamExample.Criteria andFieldNotBetween(String value1, String value2) {
            return notBetween(field, value1, value2);
        }
        public DiySearchParamExample.Criteria andPageIdIsNull() {
            return isNull(pageId);
        }

        public DiySearchParamExample.Criteria andPageIdIsNotNull() {
            return isNotNull(pageId);
        }

        public DiySearchParamExample.Criteria andPageIdEqualTo(Long value) {
            return equalTo(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdNotEqualTo(Long value) {
            return notEqualTo(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdGreaterThan(Long value) {
            return greaterThan(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdLessThan(Long value) {
            return lessThan(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(pageId, value);
        }

        public DiySearchParamExample.Criteria andPageIdIn(List<Long> values) {
            return in(pageId, values);
        }

        public DiySearchParamExample.Criteria andPageIdNotIn(List<Long> values) {
            return notIn(pageId, values);
        }

        public DiySearchParamExample.Criteria andPageIdBetween(Long value1, Long value2) {
            return between(pageId, value1, value2);
        }

        public DiySearchParamExample.Criteria andPageIdNotBetween(Long value1, Long value2) {
            return notBetween(pageId, value1, value2);
        }
        public DiySearchParamExample.Criteria andTypeIsNull() {
            return isNull(type);
        }

        public DiySearchParamExample.Criteria andTypeIsNotNull() {
            return isNotNull(type);
        }

        public DiySearchParamExample.Criteria andTypeEqualTo(Integer value) {
            return equalTo(type, value);
        }

        public DiySearchParamExample.Criteria andTypeNotEqualTo(Integer value) {
            return notEqualTo(type, value);
        }

        public DiySearchParamExample.Criteria andTypeGreaterThan(Integer value) {
            return greaterThan(type, value);
        }

        public DiySearchParamExample.Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            return greaterThanOrEqualTo(type, value);
        }

        public DiySearchParamExample.Criteria andTypeLessThan(Integer value) {
            return lessThan(type, value);
        }

        public DiySearchParamExample.Criteria andTypeLessThanOrEqualTo(Integer value) {
            return lessThanOrEqualTo(type, value);
        }

        public DiySearchParamExample.Criteria andTypeIn(List<Integer> values) {
            return in(type, values);
        }

        public DiySearchParamExample.Criteria andTypeNotIn(List<Integer> values) {
            return notIn(type, values);
        }

        public DiySearchParamExample.Criteria andTypeBetween(Integer value1, Integer value2) {
            return between(type, value1, value2);
        }

        public DiySearchParamExample.Criteria andTypeNotBetween(Integer value1, Integer value2) {
            return notBetween(type, value1, value2);
        }
        public DiySearchParamExample.Criteria andParamIdIsNull() {
            return isNull(paramId);
        }

        public DiySearchParamExample.Criteria andParamIdIsNotNull() {
            return isNotNull(paramId);
        }

        public DiySearchParamExample.Criteria andParamIdEqualTo(Long value) {
            return equalTo(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdNotEqualTo(Long value) {
            return notEqualTo(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdGreaterThan(Long value) {
            return greaterThan(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdGreaterThanOrEqualTo(Long value) {
            return greaterThanOrEqualTo(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdLessThan(Long value) {
            return lessThan(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdLessThanOrEqualTo(Long value) {
            return lessThanOrEqualTo(paramId, value);
        }

        public DiySearchParamExample.Criteria andParamIdIn(List<Long> values) {
            return in(paramId, values);
        }

        public DiySearchParamExample.Criteria andParamIdNotIn(List<Long> values) {
            return notIn(paramId, values);
        }

        public DiySearchParamExample.Criteria andParamIdBetween(Long value1, Long value2) {
            return between(paramId, value1, value2);
        }

        public DiySearchParamExample.Criteria andParamIdNotBetween(Long value1, Long value2) {
            return notBetween(paramId, value1, value2);
        }
        public DiySearchParamExample.Criteria andFieldTextIsNull() {
            return isNull(fieldText);
        }

        public DiySearchParamExample.Criteria andFieldTextIsNotNull() {
            return isNotNull(fieldText);
        }

        public DiySearchParamExample.Criteria andFieldTextEqualTo(String value) {
            return equalTo(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextNotEqualTo(String value) {
            return notEqualTo(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextGreaterThan(String value) {
            return greaterThan(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextLessThan(String value) {
            return lessThan(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextLike(String value) {
            return like(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextNotLike(String value) {
            return notLike(fieldText, value);
        }

        public DiySearchParamExample.Criteria andFieldTextIn(List<String> values) {
            return in(fieldText, values);
        }

        public DiySearchParamExample.Criteria andFieldTextNotIn(List<String> values) {
            return notIn(fieldText, values);
        }

        public DiySearchParamExample.Criteria andFieldTextBetween(String value1, String value2) {
            return between(fieldText, value1, value2);
        }

        public DiySearchParamExample.Criteria andFieldTextNotBetween(String value1, String value2) {
            return notBetween(fieldText, value1, value2);
        }
        public DiySearchParamExample.Criteria andContentIsNull() {
            return isNull(content);
        }

        public DiySearchParamExample.Criteria andContentIsNotNull() {
            return isNotNull(content);
        }

        public DiySearchParamExample.Criteria andContentEqualTo(String value) {
            return equalTo(content, value);
        }

        public DiySearchParamExample.Criteria andContentNotEqualTo(String value) {
            return notEqualTo(content, value);
        }

        public DiySearchParamExample.Criteria andContentGreaterThan(String value) {
            return greaterThan(content, value);
        }

        public DiySearchParamExample.Criteria andContentGreaterThanOrEqualTo(String value) {
            return greaterThanOrEqualTo(content, value);
        }

        public DiySearchParamExample.Criteria andContentLessThan(String value) {
            return lessThan(content, value);
        }

        public DiySearchParamExample.Criteria andContentLessThanOrEqualTo(String value) {
            return lessThanOrEqualTo(content, value);
        }

        public DiySearchParamExample.Criteria andContentLike(String value) {
            return like(content, value);
        }

        public DiySearchParamExample.Criteria andContentNotLike(String value) {
            return notLike(content, value);
        }

        public DiySearchParamExample.Criteria andContentIn(List<String> values) {
            return in(content, values);
        }

        public DiySearchParamExample.Criteria andContentNotIn(List<String> values) {
            return notIn(content, values);
        }

        public DiySearchParamExample.Criteria andContentBetween(String value1, String value2) {
            return between(content, value1, value2);
        }

        public DiySearchParamExample.Criteria andContentNotBetween(String value1, String value2) {
            return notBetween(content, value1, value2);
        }
    }
}